package com.rightrule.rule.dto;

import com.alibaba.fastjson.JSONObject;
import lombok.Data;

import java.io.Serializable;
import java.util.Map;

/**
 * 规则流包实体类
 */
@Data
public class RuleFlowSnapshotDTO implements Serializable {

    /**
     * 规则流id，规则流落库时的主键
     */
    private Long id;

    /**
     * 父规则流id,如果是主规则流的时候为0
     */
    private Long parentFlowId;

    /**
     * 规则流名称-如果是主规则流则是master，子规则流则是对应的子规则流名称
     */
    private String flowName;

    /**
     * 规则流的前端展示代码
     */
    private JSONObject flowData;

    /**
     * 规则流的前端逻辑代码
     */
    private JSONObject flowLogic;

    /**
     * 对应的规则
     */
    private Map<String, RuleFlowNodeSnapshotDTO> nodes;

    /**
     * 开始节点
     */
    private RuleFlowNodeSnapshotDTO startNode;

}
